<template>
    <div class="box1">
        <div class="title">
            <p>男女比例</p>
            <img src="../../images/dataScreen-title.png" alt="">
        </div>
        <div class="sex">
            <div class="man">
                <img src="../../images/man.png" alt="">
            </div>
            <div class="woman">
                <img src="../../images/woman.png" alt="">
            </div>
        </div>
        <div class="rate">
            <p>男士58%</p>
            <p>女士42%</p>
        </div>
        <div class="charts" ref="charts">
        </div>
    </div>
</template>

<script setup lang="ts">
import { ref, onMounted } from 'vue'
import * as echarts from 'echarts'

// 获取charts节点
let charts = ref<any>()

onMounted(() => {
    // 获取charts类的实例
    let mycharts = echarts.init(charts.value)
    // 设置实例配置项
    mycharts.setOption({
        // 标题组件
        title: {
            text: '男女比例',
            textStyle: {
                color: 'skyblue'
            },
            left: '40%'
        },
        // x|y轴组件
        xAxis: {
            show: false,
            min: 0,
            max: 100
        },
        yAxis: {
            show: false,
            type: 'category'
        },
        // 系列：决定展示什么样的图形
        series: [
            {
                type: 'bar',
                data: [58],
                barWidth:20,
                z:100,
                itemStyle:{
                    color:'skyblue',
                    borderRadius:20
                }
            },
            {
                type: 'bar',
                data: [100],
                barWidth:20,
                barGap:'-100%',
                itemStyle:{
                    color:'pink',
                    borderRadius:20
                }
            }
        ],
        // 布局组件
        grid: {
            left: 0,
            right: 0,
            top: 0,
            bottom: 0
        }
    })
})
</script>

<style lang="scss" scoped>
.box1 {
    width: 100%;
    height: 100%;
    background: url('../../images/dataScreen-main-cb.png') no-repeat;
    background-size: 100% 100%;
    margin: 20px 0;

    .title {
        margin-left: 20px;

        p {
            color: #fff;
            font-size: 20px;
        }
    }

    .sex {
        display: flex;
        justify-content: center;

        .man {
            width: 111px;
            height: 115px;
            margin: 20px;
            background: url('../../images/man-bg.png') no-repeat;
            background-size: 100% 100%;
            display: flex;
            justify-content: center;
            align-items: center;
        }

        .woman {
            width: 111px;
            height: 115px;
            margin: 20px;
            background: url('../../images/woman-bg.png') no-repeat;
            background-size: 100% 100%;
            display: flex;
            justify-content: center;
            align-items: center;
        }
    }

    .rate {
        width: 70%;
        display: flex;
        justify-content: space-between;
        color: #fff;
        margin: 0 auto;
    }

    .charts {
        width: 70%;
        height: 100px;
        // margin: 0 auto;
        margin-left: 70px;
    }
}
</style>